package com.backend.teamapi.repository;

import com.backend.teamapi.model.Team;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Optional;

@Repository
public interface TeamRepository extends JpaRepository<Team, Long> {

    // 根据团队名称查找团队
    Team findByName(String name);

    // 判断团队名是否已存在（用于创建时校验）
    boolean existsByName(String name);

    // 根据创建者 ID 查询该用户创建的所有团队
    List<Team> findByCreatorId(Long creatorId);

    // 根据成员 ID 查找该成员参与的所有团队
    List<Team> findByMembersId(Long userId);

    // 根据团队 ID 查询团队信息
    Optional<Team> findById(Long id);  // 返回 Optional<Team> 类型
}